package com.imooc.bilibili.dao;

import com.alibaba.fastjson.JSONObject;
import com.imooc.bilibili.domain.User;
import com.imooc.bilibili.domain.UserInfo;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;
import java.util.Set;

/**
 * ProjectName imooc-bilibili
 *
 * @author xieyucan
 * <br>CreateDate 2022/10/21 18:10
 */
@Mapper
public interface UserDao {
    User getUserByPhone(String phone);

    void addUser(User user);

    void addUserInfo(UserInfo userInfo);

    User getUserById(Long id);

    UserInfo getUserInfoByUserId(Long userId);

    void updateUserInfo(UserInfo userInfo);

    void updateUser(User user);

    List<UserInfo> getUserInfoByUserIds(Set<Long> followIdSet);

    Integer pageCountUserInfo(Map<String,Object> params);

    List<UserInfo> pageListUserInfo(Map<String,Object> params);
}
